package com.ocom.common.entity.typehandler;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.*;

import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotNull;

/**
 * <p>
 * 智慧生活商家信息
 * </p>
 *
 * @author js
 * @since 2023-10-04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName(value = "ccb_business_info")
public class EntityCcbBusinessInfo{

    private static final long serialVersionUID=1L;

    /**
     * 自增id，主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @JsonProperty("id")
    private Integer id;

    /**
     * 单位编号
     */
    @NotNull
    @JsonProperty("comId")
    private Long comId;

    /**
     * 商户id,0代表单位
     */
    @JsonProperty("merchId")
    private Long merchId;

    /**
     * 商家号,建行智慧食堂系统商家唯一标识
     */
    @JsonProperty("businessId")
    private String businessId;

    /**
     * 商家名称
     */
    @JsonProperty("businessName")
    private String businessName;

    /**
     * 建行商户号
     */
    @JsonProperty("mrchId")
    private String mrchId;

    /**
     * 分行号
     */
    @JsonProperty("branchId")
    private String branchId;

    /**
     * 商家手机号,解绑时接收短信验证码
     */
    @JsonProperty("mobile")
    private String mobile;

    /**
     * 生成时间
     */
    @JsonProperty("createTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新时间
     */
    @JsonProperty("updateTime")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    //新柜台数
    @TableField(exist=false)
    @JsonProperty("posAmount")
    private Integer posAmount;

    //（新）柜台号
    @TableField(exist=false)
    @JsonProperty("posIds")
    private String posIds;
    @TableField(exist=false)
    @JsonProperty("status")
    private Integer status;
}
